home *** CD-ROM | disk | FTP | other *** search
- property spriteNum, motion, undercard, row, location
- global getlist, equal, currentsel, godlist, foundation, points, tableau
-
- on beginSprite me
- row = determinerow()
- undercard = sprite(spriteNum - 4)
- location = sprite(spriteNum).loc
- foundation.addProp(row, new(script("card pile")))
- end
-
- on mouseDown me
- if foundation[row].getcardcount() > 0 then
- puppetSound(3, member("pick card", "100GPak Generic SFX"))
- sprite(spriteNum).locZ = spriteNum + 1000
- getlist = foundation[row]
- if foundation[row].getcardcount() > 1 then
- undercard.member = member(foundation[row].cards[foundation[row].getcardcount() - 1].membername, "playing cards")
- else
- if foundation[row].getcardcount() = 1 then
- undercard.member = member("empty", "playing cards")
- end if
- end if
- motion = timeout(string(spriteNum) && "motion").new(5, #moving, me)
- end if
- end
-
- on moving me
- if the mouseDown then
- sprite(spriteNum).loc = the mouseLoc
- else
- if the mouseUp then
- sprite(spriteNum).locZ = spriteNum
- motion.forget()
- abort()
- end if
- end if
- end
-
- on mouseUp me
- if equal then
- puppetSound(3, member("pick card", "100GPak Generic SFX"))
- sprite(currentsel).member = member(sprite(spriteNum).member.name, "playing cards")
- godlist.addCard(currentsel)
- sprite(spriteNum).loc = location
- foundation[row].cards.deleteOne(foundation[row].getlastcard())
- if foundation[row].getcardcount() > 0 then
- sprite(spriteNum).member = member(foundation[row].getlastcard().membername, "playing cards")
- else
- if foundation[row].getcardcount() = 0 then
- sprite(spriteNum).member = member("empty", "playing cards")
- undercard.member = member("empty", "playing cards")
- end if
- end if
- if objectp(tableau[sprite(currentsel).row]) then
- repeat with i = 93 to 96
- if tableau[sprite(i).row].getcardcount() > 0 then
- sprite(i).loc = tableau[sprite(i).row].getlastcard().location
- next repeat
- end if
- sprite(i).loc = sprite(i).loki
- end repeat
- end if
- if not objectp(foundation[sprite(currentsel).row]) then
- points = points - 10
- end if
- equal = 0
- currentsel = 0
- godlist = VOID
- getlist = VOID
- checkwin()
- else
- if not equal then
- puppetSound(3, member("drop card", "100GPak Generic SFX"))
- getlist = VOID
- sprite(spriteNum).loc = location
- end if
- end if
- checkwin()
- end
-
- on determinerow me
- if spriteNum = 17 then
- return #fone
- else
- if spriteNum = 18 then
- return #ftwo
- else
- if spriteNum = 19 then
- return #fthree
- else
- if spriteNum = 20 then
- return #ffour
- end if
- end if
- end if
- end if
- end
-